package com.hoshiibuy.cms.common.dataobject;

import java.util.List;

import com.hoshiibuy.cms.common.enums.BooleanEnum;
import com.hoshiibuy.cms.common.enums.StatusEnum;

import lombok.Data;

@Data
public class ArticleDO {

    private Long id;

    /**
     * 标题
     */
    private String title;

    /**
     * 封面图
     */
    private String frontCover;

    /**
     * 关键字，用于SEO
     */
    private String keywords;

    /**
     * 描述，摘要，用于SEO和列表摘要
     */
    private String description;

    /**
     * 点击量
     */
    private int hits = 0;

    /**
     * 评论数
     */
    private long commentCount = 0;

    private int orders = 0;

    /**
     * 文章状态，枚举,默认发布状态
     */
    private StatusEnum status = StatusEnum.PUBLISH;

    /**
     * 是否允许评论
     */
    private BooleanEnum allowComment;

    /**
     * 栏目
     */
    private CategoryDO category;

    /**
     * 文章模版
     */
    private TemplateDO template;

    /**
     * 文章标签
     */
    private List<TagDO> tags;

    /**
     * 标签ID集合
     */
    private List<Long> tagIds;

    /**
     * 文章内容
     */
    private ArticleDataDO articleData;

    /**
     * 作者ID
     */
    private Integer creator;

    private Long addTime;

    private Long updateTime;

    private String addTimeText;

    private String updateTimeText;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	public String getFrontCover() {
		return frontCover;
	}

	public void setFrontCover(String frontCover) {
		this.frontCover = frontCover;
	}

	public String getKeywords() {
		return keywords;
	}

	public void setKeywords(String keywords) {
		this.keywords = keywords;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public int getHits() {
		return hits;
	}

	public void setHits(int hits) {
		this.hits = hits;
	}

	public long getCommentCount() {
		return commentCount;
	}

	public void setCommentCount(long commentCount) {
		this.commentCount = commentCount;
	}

	public int getOrders() {
		return orders;
	}

	public void setOrders(int orders) {
		this.orders = orders;
	}

	public StatusEnum getStatus() {
		return status;
	}

	public void setStatus(StatusEnum status) {
		this.status = status;
	}

	public BooleanEnum getAllowComment() {
		return allowComment;
	}

	public void setAllowComment(BooleanEnum allowComment) {
		this.allowComment = allowComment;
	}

	public CategoryDO getCategory() {
		return category;
	}

	public void setCategory(CategoryDO category) {
		this.category = category;
	}

	public TemplateDO getTemplate() {
		return template;
	}

	public void setTemplate(TemplateDO template) {
		this.template = template;
	}

	public List<TagDO> getTags() {
		return tags;
	}

	public void setTags(List<TagDO> tags) {
		this.tags = tags;
	}

	public List<Long> getTagIds() {
		return tagIds;
	}

	public void setTagIds(List<Long> tagIds) {
		this.tagIds = tagIds;
	}

	public ArticleDataDO getArticleData() {
		return articleData;
	}

	public void setArticleData(ArticleDataDO articleData) {
		this.articleData = articleData;
	}

	public Integer getCreator() {
		return creator;
	}

	public void setCreator(Integer creator) {
		this.creator = creator;
	}

	public Long getAddTime() {
		return addTime;
	}

	public void setAddTime(Long addTime) {
		this.addTime = addTime;
	}

	public Long getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Long updateTime) {
		this.updateTime = updateTime;
	}

	public String getAddTimeText() {
		return addTimeText;
	}

	public void setAddTimeText(String addTimeText) {
		this.addTimeText = addTimeText;
	}

	public String getUpdateTimeText() {
		return updateTimeText;
	}

	public void setUpdateTimeText(String updateTimeText) {
		this.updateTimeText = updateTimeText;
	}

}
